Software is frequently sold or distributed as pre-compiled computer products that may be restricted by, platform, language, etc. Software shared from user to user and for a wide variety of applications often needs customization to either be of use to the particular user or to be used on a particular machine, often involving the re-writing of code. The re-writing of code can result in variations in functionality or output as well as being difficult or impossible for the end-user.